#ifndef _HIKVISION_DRIVER_H_
#define _HIKVISION_DRIVER_H_
#include "../../cameradrv/include/cameraDrv.h"

/* geturl */
#define GET_DEVINFO_URL "http://192.168.100.240:80/ISAPI/System/deviceInfo"
#define GET_DEV_TIME_URL "http://192.168.100.240:80/ISAPI/System/time"

/* puturl */
#define PUT_DEV_OSD_NAME "http://192.168.100.240:80/ISAPI/System/Video/inputs/channels/1/overlays/text"
#define PUT_DEV_TIME "http://192.168.100.240:80/ISAPI/System/time"



/*  目前需要设置和获取的属性值有两个 */
enum attType
{
    Time,
    OSD,
    Infor,
    State,
    RTSP,
};

/* OSD名称 */
typedef struct 
{
    char* name;
}OSDSelfPut,*pOSDSelfPut;

/* put时间参数 */
typedef struct 
{
    char* time;         /* 格式为"2023-02-28T10:50:44+08:00" */
}TimeSelfPut,*pTimeSelfPut;

/* 设备信息参数 */
typedef struct 
{
    char* deviceName;
    char* deviceID;
    char* serialNumber;
    char* macAddress;
}deviceInfor,*pDeviceInfor;

/* get时间参数 */
typedef struct 
{
    char* timemode;         
    char* localtime;         
}deviceTime,*pdeviceTime;

/* 请求参数 */
typedef struct 
{
    char* url;
    void *selfPut;      //写参数
    void *getInfo;      //读参数
    enum attType type;  //设置的类型
    enum transmode mode; //传输方式
}reqArgs,*pReqArgs;



int hikvisionInit(void);

#endif